Spectral subtraction noise suppression method

ABSTRACT

A spectral subtraction noise suppression method in a frame based digital communication system is described. Each frame includes a predetermined number N of audio samples, thereby giving each frame N degrees of freedom. The method is performed by a spectral subtraction function H(w) which is based on an estimate of the power spectral density of background noise of non-speech frames and an estimate Φ x  (w) of the power spectral density of speech frames. Each speech frame is approximated by a parametric model that reduces the number of degrees of freedom to less than N. The estimate Φ x  (w) of the power spectral density of each speech frame is estimated from the approximative parametric model.

TECHNICAL FIELD

The present invention relates to noise suppresion in digital frame based communication systems, and in particular to a spectral subtraction noise suppression method in such systems.

BACKGROUND

A common problem in speech signal processing is the enhancement of a speech signal from its noisy measurement. One approach for speech enhancement based on single channel (microphone) measurements is filtering in the frequency domain applying spectral subtraction techniques, 1!, 2!. Under the assumption that the background noise is long-time stationary (in comparison with the speech) a model of the background noise is usually estimated during time intervals with non-speech activity. Then, during data frames with speech activity, this estimated noise model is used together with an estimated model of the noisy speech in order to enhance the speech. For the spectral subtraction techniques these models are traditionally given in terms of the Power Spectral Density (PSD), that is estimated using classical FFT methods.

None of the abovementioned techniques give in their basic form an output signal with satisfactory audible quality in mobile telephony applications, that is

1. non distorted speech output

2. sufficient reduction of the noise level

3. remaining noise without annoying artifacts

In particular, the spectral subtraction methods are known to violate 1 when 2 is fulfilled or violate 2 when 1 is fulfilled. In addition, in most cases 3 is more or less violated since the methods introduce, so called, musical noise.

The above drawbacks with the spectral subtraction methods have been known and, in the literature, several ad hoc modifications of the basic algorithms have appeared for particular speech-in-noise scenarios. However, the problem how to design a spectral subtraction method that for general scenarios fulfills 1-3 has remained unsolved.

In order to highlight the difficulties with speech enhancement from noisy data, note that the spectral subtraction methods are based on filtering using estimated models of the incoming data. If those estimated models are close to the underlying "true" models, this is a well working approach. However, due to the short time stationarity of the speech (10-40 ms) as well as the physical reality surrounding a mobile telephony application (8000 Hz sampling frequency, 0.5-2.0 s stationarity of the noise, etc.) the estimated models are likely to significantly differ from the underlying reality and, thus, result in a filtered output with low audible quality.

EP, A1, 0 588 526 describes a method in which spectral analysis is performed either with Fast Fourier Transformation (FFT) or Linear Predictive Coding (LPC).

SUMMARY

An object of the present invention is to provide a spectral subtraction noise suppresion method that gives a better noise reduction without sacrificing audible quality.

This object is solved by a spectral subtraction noise suppression method in a frame based digital communication system, each frame including a predetermined number N of audio samples, thereby giving each frame N degrees of freedom, wherein a spectral subtraction function H(w) is based on an estimate Φ_(v) (w) of a power spectral density of background noise of non-speech frames and an estimate Φ_(x) (w) of a power spectral density of speech frames. The method includes the steps of approximating each speech frame by a parametric model that reduces the number of degrees of freedom to less than N; estimating the estimate Φ_(x) (w) of the power spectral density of each speech frame by a parametric power spectrum estimation method based on the approximative parametric model; and estimating the estimate Φ_(v) (w) of the power spectral density of each non-speech frame by a non-parametric power spectrum estimation method.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention, together with further objects and advantages thereof, may best be understood by making reference to the following description taken together with the accompanying drawings, in which:

FIG. 1 is a block diagram of a spectral subtraction noise suppression system suitable for performing the method of the present invention;

FIG. 2 is a state diagram of a Voice Activity Detector (VAD) that may be used in the system of FIG. 1;

FIG. 3 is a diagram of two different Power Spectrum Density estimates of a speech frame;

FIG. 4 is a time diagram of a sampled audio signal containing speech and background noise;

FIG. 5 is a time diagram of the signal in FIG. 3 after spectral noise subtraction in accordance with the prior art;

FIG. 6 is a time diagram of the signal in FIG. 3 after spectral noise subtraction in accordance with the present invention; and

FIG. 7 is a flow chart illustrating the method of the present invention.

DETAILED DESCRIPTION

The Spectral Subtraction Technique

Consider a frame of speech degraded by additive noise

    x(k)=s(k)+v(k)k=1, . . . , N                               (1)

where x(k), s(k) and v(k) denote, respectively, the noisy measurement of the speech, the speech and the additive noise, and N denotes the number of samples in a frame.

The speech is assumed stationary over the frame, while the noise is assumed long-time stationary, that is stationary over several frames. The number of frames where v(k) is stationary is denoted by τ>>1. Further, it is assumed that the speech activity is sufficiently low, so that a model of the noise can be accurately estimated during non-speech activity.

Denote the power spectral densities (PSDs) of, respectively, the measurement, the speech and the noise by Φ_(x) (ω), Φ_(s) (ω) and Φ_(v) (ω), where

    Φ.sub.x (ω)=Φ.sub.s (ω)+Φ.sub.v (ω)(2)

Knowing Φ_(x) (ω) and Φ_(v) (ω), the quantities Φ_(s) (ω) and s(k) can be estimated using standard spectral subtraction methods, cf 2!, shortly reviewed below

Let s(k) denote an estimate of s(k). Then, ##EQU1## where (·) denotes some linear transform, for example the Discrete Fourier Transform (DFT) and where H (ω) is a real-valued even function in wε(0, 2π) and such that 0≦H (ω)≦1. The function H(ω) depends on Φ_(x) (ω) and Φ_(v) (ω). Since H(ω) is real-valued, the phase of S(ω)=H(ω)X(ω) equals the phase of the degraded speech. The use of real-valued H(ω) is motivated by the human ears unsensitivity for phase distortion.

In general, Φ_(x) (ω) and Φ_(v) (ω) are unknown and have to be replaced in H(ω) by estimated quantities Φ_(x) (ω) and Φ_(v) (ω). Due to the non-stationarity of the speech, Φ_(x) (ω) is estimated from a single frame of data, while Φ_(v) (ω) is estimated using data in τ speech free frames. For simplicity, it is assumed that a Voice Activity Detector (VAD) is available in order to distinguish between frames containing noisy speech and frames containing noise only. It is assumed that Φ_(v) (ω) is estimated during non-speech activity by averaging over several frames, for example, using

    Φ.sub.v ((ω)).sup.l =ρΦ.sub.v ((ω)).sup.l-1 +(1-ρ)Φ.sub.v ((ω))                         (4)

In (4), Φ_(v) (ω)^(l) is the (running) averaged PSD estimate based on data up to and including frame number l and Φ_(v) (ω) is the estimate based on the current frame. The scalar ρε(0, 1) is tuned in relation to the assumed stationarity of v(k). An average over τ frames roughly corresponds to ρ implicitly given by ##EQU2##

A suitable PSD estimate (assuming no apriori assumptions on the spectral shape of the background noise) is given by ##EQU3## where "*" denotes the complex conjugate and where V(ω)=(v(k)). With, (·)=FFT(·) (Fast Fourier Transformation), Φ_(v) (ω) is the Periodigram and Φ_(v) (ω) in (4) is the averaged Periodigram, both leading to asymptotically (N>>1) unbiased PSD estimates with approximative variances ##EQU4##

A similar expression to (7) holds true for Φ_(x) (ω) during speech activity (replacing Φ_(v) ² (ω) in (7) with Φ_(x) ² (ω)).

A spectral subtraction noise suppression system suitable for performing the method of the present invention is illustrated in block form in FIG. 1. From a microphone 10 the audio signal x(t) is forwarded to an A/D converter 12. A/D converter 12 forwards digitized audio samples in frame form {x(k)} to a transform block 14, for example a FFT (Fast Fourier Transform) block, which transforms each frame into a corresponding frequency transformed frame {X(ω)}. The transformed frame is filtered by H(ω) in block 16. This step performs the actual spectral subtraction. The resulting signal {S(ω)} is transformed back to the time domain by an inverse transform block 18. The result is a frame {s(k)} in which the noise has been suppressed. This frame may be forwarded to an echo canceler 20 and thereafter to a speech encoder 22. The speech encoded signal is then forwarded to a channel encoder and modulator for transmission (these elements are not shown).

The actual form of H(ω) in block 16 depends on the estimates Φ_(x) (ω), Φ_(v) (ω), which are formed in PSD estimator 24, and the analytical expression of these estimates that is used. Examples of different expressions are given in Table 2 of the next section. The major part of the following description will concentrate on different methods of forming estimates Φ_(x) (ω), Φ_(v) (ω) from the input frame {x(k)}.

PSD estimator 24 is controlled by a Voice Activity Detector (VAD) 26, which uses input frame {x(k)} to determine whether the frame contains speech (S) or background noise (B). A suitable VAD is described in 5!, 6!. The VAD may be implemented as a state machine having the 4 states illustrated in FIG. 2. The resulting control signal S/B is forwarded to PSD estimator 24. When VAD 26 indicates speech (S), states 21 and 22, PSD estimator 24 will form Φ_(x) (ω). On the other hand, when VAD 26 indicates non-speech activity (B), state 20, PSD estimator 24 will form Φ_(v) (ω). The latter estimate will be used to form H(ω) during the next speech frame sequence (together with Φ_(x) (ω) of each of the frames of that sequence).

Signal S/B is also forwarded to spectral subtraction block 16. In this way block 16 may apply different filters during speech and non-speech frames. During speech frames H(ω) is the above mentioned expression of Φ_(x) (ω), Φ_(v) (ω). On the other hand, during non-speech frames H(ω) may be a constant H (0≦H≦1) that reduces the background sound level to the same level as the background sound level that remains in speech frames after noise suppression. In this way the perceived noise level will be the same during both speech and non-speech frames.

Before the output signal s(k) in (3) is calculated, H(ω) may, in a preferred embodiment, be post filtered according to

    H.sub.p ((ω))=max(0.1, W((ω))H((ω)))∀w(8)

                  TABLE 1                                                          ______________________________________                                         The postfiltering functions                                                    STATE (st)  H(ω)  COMMENT                                                ______________________________________                                          0          1 (∀ω)                                                                    s(k) = x(k)                                            20          0.316 (∀ω)                                                                muting -10 dB                                          21          0.7 H(ω)                                                                             cautios filtering (-3 dB)                              22          H(ω)                                                         ______________________________________                                    

where H(ω) is calculated according to Table 1. The scalar 0.1 implies that the noise floor is -20 dB.

Furthermore, signal S/B is also forwarded to speech encoder 22. This enables different encoding of speech and background sound.

PSD ERROR ANALYSIS

It is obvious that the stationarity assumptions imposed on s(k) and v(k) give rise to bound on how accurate the estimate s(k) is in comparison with the noise free speech signal s(k). In this Section, an analysis technique for spectral subtraction methods is introduced. It is based on first order approximations of the PSD estimates Φ_(x) (ω) and, respectively, Φ_(v) (ω) (see (11) below ), in combination with approximative (zero order approximations) expression for the accuracy of the introduced deviations. Explicitly, in the following an expression is derived for the frequency domain error of the estimated signal s(k), due to the method used (the choice of transfer function H(ω)) and due to the accuracy of the involved PSD estimator. Due to the human ears unsensitivity for phase distortion it is relevant to consider the PSD error, defined by

    Φ.sub.s ((ω))=Φ.sub.s ((ω))-Φ.sub.s ((ω))(9)

where

    Φ.sub.s ((ω))=H.sup.2 ((ω))Φ.sub.x ((ω))(10)

Note that Φ_(s) (ω) by construction is an error term describing the difference (in the frequency domain) between the magnitude of the filtered noisy measurement and the magnitude of the speech. Therefore, Φ_(s) (ω) can take both positive and negative values and is not the PSD of any time domain signal. In (10), H(ω) denotes an estimate of H(ω) based on Φ_(x) (ω) and Φ_(v) (ω). In this Section, the analysis is restricted to the case of Power Subtraction (PS), 2!. Other choices of H(ω) can be analyzed in a similar way (see APPENDIX A-C). In addition novel choices of H(ω) are introduced and analyzed (see APPENDIX D-G). A summary of different suitable choices of H(ω) is given in Table 2.

                  TABLE 2                                                          ______________________________________                                         Examples of different spectral subtraction methods: Power Subtraction          (PS) (standard PS, H.sub.PS (ω) for δ = 1), Magnitude              Subtraction                                                                    (MS), spectral subtraction methods based on Wiener Filtering                   (WF) and Maximum Likelihood (ML) methodologies and                             Improved Power Subtraction (IPS) in accordance with a preferred                embodiment of the present invention.                                           H(ω)                                                                     ______________________________________                                         1 #STR1##                                                                      2 #STR2##                                                                      H.sub.WF (ω) = H.sub.PS.sup.2 (ω)                                  H.sub.ML (ω) = 1/2(1 + H.sub.PS (ω))                               3 #STR3##                                                                      ______________________________________                                    

By definition, H(ω) belongs to the interval 0≦H(ω)≦1, which not necesarilly holds true for the corresponding estimated quantities in Table 2 and, therfore, in practice half-wave or full-wave rectification, 1!, is used.

In order to perform the analysis, assume that the frame length N is sufficiently large (N>>1) so that Φ_(x) (ω) and Φ_(v) (ω) are approximately unbiased. Introduce the first order deviations

    Φ.sub.x ((ω))=Φ.sub.x ((ω))+Δ.sub.x ((ω))(11)

    Φ.sub.v ((ω))=Φ.sub.v ((ω))+Δ.sub.v ((ω))

where Δ_(x) (ω) and Δ_(v) (ω) are zero-mean stochastic variables such that E Δ_(x) (ω)/Φ_(x) (ω)!² <<1 and E Δ_(v) (ω)/Φ_(v) (ω)!² <<1. Here and in the sequel, the notation E ·! denotes statistical expectation. Further, if the correlation time of the noise is short compared to the frame length, E (Φ_(v) (ω)^(l) -Φ_(v) (ω))(Φ_(v) (ω)^(k) -Φ_(v) (ω))!≈0 for l≠k, where Φ_(v) (ω)^(l) is the estimate based on the data in the l-th frame. This implies that Δ_(x) (ω) and Δ_(v) (ω) are approximately independent. Otherwise, if the noise is strongly correlated, assume that Φ_(v) (ω) has a limited (<<N) number of (strong) peaks located at frequencies w₁, . . . , w_(n). Then, E (Φ_(v) (ω)^(l) -Φ_(v) (ω))(Φ_(v) (ω)^(k) -Φ_(v) (ω))!≈0 holds for w≠w_(j) j=1, . . . , n and l≠k and the analysis still holds true for w≠w_(j) j=1, . . . , n.

Equation (11) implies that asymptotical (N>>1) unbiased PSD estimators such as the Periodogram or the averaged Periodogram are used. However, using asymptotically biased PSD estimators, such as the Blackman-Tukey PSD estimator, a similar analysis holds true replacing (11) with

    Φ.sub.x ((ω))=Φ.sub.x ((ω))+Δ.sub.x ((ω))+B.sub.x ((ω))

and

    Φ.sub.v ((ω))=Φ.sub.v ((ω))+Δ.sub.v ((ω))+B.sub.v ((ω))

where, respectively, B_(x) (ω) and B_(v) (ω) are deterministic terms describing the asymptotic bias in the PSD estimators.

Further, equation (11) implies that Φ_(s) (ω) in (9) is (in the first order approximation) a linear function in Δ_(x) (ω) and Δ_(v) (ω). In the following, the performance of the different methods in terms of the bias error (E Φ_(s) (ω)!) and the error variance (Var(Φ_(s) (ω))) are considered. A complete derivation will be given for H_(PS) (ω) in the next section. Similar derivations for the other spectral subtraction methods of Table 1 are given in APPENDIX A-G.

ANALYSIS OF H_(PS) (ω) (H.sub.δPS (ω) for δ=1)

Inserting (10) and H_(PS) (ω) from Table 2 into (9), using the Taylor series expansion (1+x)⁻¹ ≃1-x and neglecting higher than first order deviations, a straightforward calculation gives ##EQU5## where "≃" is used to denote an approximate equality in which only the dominant terms are retained. The quantities Δ_(x) (ω) and Δ_(v) (ω) are zero-mean stochastic variables. Thus, ##EQU6##

In order to continue we use the general result that, for an asymptotically unbiased spectral estimator Φ(ω), cf (7)

    Var(Φ((ω)))≃γ((ω))Φ.sup.2 ((ω))                                               (15)

for some (possibly frequency dependent) variable γ(ω). For example, the Periodogram corresponds to γ(ω)≈1+(sin wN/N sin w)², which for N>>1 reduces to γ≈1. Combining (14) and (15) gives

    Var(Φ.sub.s ((ω)))≃γΦ.sub.v.sup.2 ((ω))                                               (16)

RESULTS FOR H_(MS) (ω)

Similar calculations for H_(MS) (ω) give (details are given in APPENDIX A): ##EQU7## RESULTS FOR H_(WF) (ω)

Calculations for H_(WF) (ω) give (details are given in APPENDIX B): ##EQU8## RESULTS FOR H_(ML) (ω)

Calculations for H_(ML) (ω) give (details are given in APPENDIX C): ##EQU9## RESULTS FOR H_(IPS) (ω)

Calculations for H_(IPS) (ω) give (H_(IPS) (ω) is derived in APPENDIX D and analyzed in APPENDIX E): ##EQU10## COMMON FEATURES

For the considered methods it is noted that the bias error only depends on the choice of H(ω), while the error variance depends both on the choice of H(ω) and the variance of the PSD estimators used. For example, for the averaged Periodogram estimate of Φ_(v) (ω) one has, from (7), that γ_(v) ≈1/τ. On the other hand, using a single frame Periodogram for the estimation of Φ_(x) (ω), one has a γ_(x) ≈1. Thus, for τ>>1 the dominant term in γ=γ_(x) +γ_(v), appearing in the above vriance equations, is γ_(x) and thus the main error source is the single frame PSD estimate based on the the noisy speech.

From the above remarks, it follows that in order to improve the spectral subtraction techniques, it is desirable to decrease the value of γ_(x) (select an appropriate PSD estimator, that is an approximately unbiased estimator with as good performance as possible) and select a "good" spectral subtraction technique (select H(ω)). A key idea of the present invention is that the value of γ_(x) can be reduced using physical modeling (reducing the number of degrees of freedom from N (the number of samples in a frame) to a value less than N) of the vocal tract. It is well known that s(k) can be accurately described by an autoregressive (AR) model (typically of order p≈10). This is the topic of the next two sections.

In addition, the accuracy of Φ_(s) (ω) (and, implicitly, the accuracy of s(k)) depends on the choice of H(ω). New, preferred choices of H(ω) are derived and analyzed in APPENDIX D-G.

SPEECH AR MODELING

In a preferred embodiment of the present invention s(k) is modeled as an autoregressive (AR) process ##EQU11## where A(q⁻¹) is a monic (the leading coefficient equals one) p-th order polynomial in the backward shift operator (q⁻¹ w(k)=w(k-1), etc.)

    A(q.sup.-1)=1+a.sub.1 q.sup.-1 + . . . +a.sub.p q.sup.-p   (18)

and w(k) is white zero-mean noise with variance σ_(w) ². At a first glance, it may seem restrictive to consider AR models only. However, the use of AR models for speech modeling is motivated both from physical modeling of the vocal tract and, which is more important here, from physical limitations from the noisy speech on the accuracy of the estimated models.

In speech signal processing, the frame length N may not be large enough to allow application of averaging techniques inside the frame in order to reduce the variance and, still, preserve the unbiasness of the PSD estimator. Thus, in order to decrease the effect of the first term in for example equation (12) physical modeling of the vocal tract has to be used. The AR structure (17) is imposed onto s(k). Explicitly, ##EQU12##

In addition, Φ_(v) (ω) may be described with a parametric model ##EQU13## where B(q⁻¹), and C(q⁻¹) are, respectively, q-th and r-th order polynomials, defined similarly to A(q⁻¹) in (18). For simplicity a parametric noise model in (20) is used in the discussion below where the order of the parametric model is estimated. However, it is appreciated that other models of background noise are also possible. Combining (19) and (20), one can show that ##EQU14## where η(k) is zero mean white noise with variance σ.sub.ηhu 2 and where D(q⁻¹) is given by the identity

    σ.sub.η.sup.2 |D(e.sup.iw)|.sup.2 =σ.sub.w.sup.2 |C(e.sup.iw)|.sup.2 +σ.sub.v.sup.2 |B(e.sup.iw)|.sup.2 |A(e.sup.iw)|.sup.2                     (22)

SPEECH PARAMETER ESTIMATION

Estimating the parameters in (17)-(18) is straightforward when no additional noise is present. Note that in the noise free case, the second term on the right hand side of (22) vanishes and, thus, (21) reduces to (17) after pole-zero cancellations.

Here, a PSD estimator based on the autocorrelation method is sought. The motivation for this is fourfold.

The autocorrelation method is well known. In particular, the estimated parameters are minimum phase, ensuring the stability of the resulting filter.

Using the Levinson algorithm, the method is easily implemented and has a low computational complexity.

An optimal procedure includes a nonlinear optimization, explicitly requiring some initialization procedure. The autocorrelation method requires none.

From a practical point of view, it is favorable if the same estimation procedure can be used for the degraded speech and, respectively, the clean speech when it is available. In other words, the estimation method should be independent of the actual scenario of operation, that is independent of the speech-to-noise ratio.

It is well known that an ARMA model (such as (21)) can be modeled by an infinite order AR process. When a finite number of data are available for parameter estimation, the infinite order AR model has to be truncated. Here, the model used is ##EQU15## where F(q⁻¹) is of order p. An appropriate model order follows from the discussion below. The approximative model (23) is close to the speech in noise process if their PSDs are approximately equal, that is ##EQU16##

Based on the physical modeling of the vocal tract, it is common to consider p=deg(A(q⁻¹))=10. From (24) it also follows that p=deg(F(q⁻¹)>>deg(A(q⁻¹))+deg(C(q⁻¹))=p+r, where p+r roughly equals the number of peaks in Φ_(x) (ω). On the other hand, modeling noisy narrow band processes using AR models requires p<<N in order to ensure realible PSD estimates. Summarizing,

    p+r<<p<<N

A suitable rule-of-thumb is given by p˜√N. From the above discussion, one can expect that a parametric approach is fruitful when N>>100. One can also conclude from (22) that the flatter the noise spectra is the smaller values of N is allowed. Even if p is not large enough, the parametric approach is expected to give reasonable results. The reason for this is that the parametric approach gives, in terms of error variance, significantly more accurate PSD estimates than a Periodogram based approach (in a typical example the ratio between the variances equals 1:8; see below), which significantly reduce artifacts as tonal noise in the output.

The parametric PSD estimator is summarized as follows. Use the autocorrelation method and a high order AR model (model order p>>p and p˜√N) in order to calculate the AR parameters {f₁, . . . , f_(p) } and the noise variance σ.sub.η² in (23). From the estimated AR model calculate (in N discrete points corresponding to the frequency bins of X(ω) in (3)) Φ_(x) (ω) according to ##EQU17##

Then one of the considered spectral subtraction techniques in Table 2 is used in order to enhance the speech s(k).

Next a low order approximation for the variance of the parametric PSD estimator (similar to (7) for the nonparametric methods considered) and, thus, a Fourier series expansion of s(k) is used under the assumption that the noise is white. Then the asymptotic (for both the number of data (N>>1) and the model order (p>>1)) variance of Φ_(x) (ω) is given by ##EQU18##

The above expression also holds true for a pure (high-order) AR process. From (26) it approximately equals γ_(x) ≈2p/N, that, according to the aforementioned rule-of-thumb, approximately equals γ_(x) ≃2/√N, which should be compared with γ_(x) ≈1 that holds true for a Periodogram based PSD estimator.

As an example, in a mobile telephony hands free environment, it is reasonable to assume that the noise is stationary for about 0.5 s (at 8000 Hz sampling rate and frame length N=256) that gives τ≈15 and, thus, γ_(v) ≃1/15. Further, for p=√N we have γ_(x) =1/8.

FIG. 3 illustrates the difference between a periodogram PSD estimate and a parametric PSD estimate in accordance with the present invention for a typical speech frame. In this example N=256 (256 samples) and an AR model with 10 parameters has been used. It is noted that the parametric PSD estimate Φ_(x) (ω) is much smoother than the corresponding periodogram PSD estimate.

FIG. 4 illustrates 5 seconds of a sampled audio signal containing speech in a noisy background. FIG. 5 illustrates the signal of FIG. 4 after spectral subtraction based on a periodogram PSD estimate that gives priority to high audible quality. FIG. 6 illustrates the signal of FIG. 4 after spectral subtraction based on a parametric PSD estimate in accordance with the present invention.

A comparison of FIG. 5 and FIG. 6 shows that a significant noise suppression (of the order of 10 dB) is obtained by the method in accordance with the present invention. (As was noted above in connection with the description of FIG. 1 the reduced noise levels are the same in both speech and non-speech frames.) Another difference, which is not apparent from FIG. 6, is that the resulting speech signal is less distorted than the speech signal of FIG. 5.

The theoretical results, in terms of bias and error variance of the PSD error, for all the considered methods are summarized in Table 3.

It is possible to rank the different methods. One can, at least, distinguish two criteria for how to select an appropriate method.

First, for low instantaneous SNR, it is desirable that the method has low variance in order to avoid tonal artifacts in s(k). This is not possible without an increased bias, and this bias term should, in order to suppress (and not amplify) the frequency regions with low instantaneous SNR, have a negative sign (thus, forcing Φ_(s) (ω) in (9) towards zero). The candidates that fulfill this criterion are, respectively, MS, IPS and WF.

Secondly, for high instantaneous SNR, a low rate of speech distortion is desirable. Further if the bias term is dominant, it should have a positive sign. ML, δPS, PS, IPS and (possibly) WF fulfill the first statement. The bias term dominates in the MSE expression only for ML and WF, where the sign of the bias terms are positive for ML and, respectively, negative for WF. Thus, ML, δPS, PS and IPS fulfill this criterion.

ALGORITHMIC ASPECTS

In this section preferred embodiments of the spectral subtraction method in accordance with the present invention are described with reference to FIG. 7.

1. Input: x={x(k)|k=1, . . . , N}.

2. Design variables

                  TABLE 3                                                          ______________________________________                                         Bias and variance expressions for Power Subtraction (PS) (standard             PS, H.sub.PS (ω) for δ = 1), Magnitude subtraction (MS),           Improved                                                                       Power Subtraction (IPS) and spectral subtraction methods                       based on Wiener Filtering (WF) and Maximum Likelihood                          (ML) methodologies. The instantaneous SNR is defined by SNR =                  Φ.sub.s (ω)/Φ.sub.ν (ω). For PS, the optimal            subtraction factor δ is given                                            by (58) and for IPS, G(ω) is given by (45) with Φ.sub.x              (ω) and Φ.sub.ν (ω)                                         there replaced by, respectively, Φ.sub.x (ω) and Φ.sub.ν      ω).                                                                            BIAS              VARIANCE                                               H(ω)                                                                           E Φ.sub.s (ω)!/Φ.sub.ν (ω)                                                Var(Φ.sub.s (ω))/γΦ.sub.ν.s                             up.2 (ω)                                         ______________________________________                                         δPS                                                                            1 - δ       δ.sup.2                                          MS                                                                                   4 #STR4##                                                                                        5 #STR5##                                              IPS                                                                                  6 #STR6##                                                                                        7 #STR7##                                              WF                                                                                   8 #STR8##                                                                                        9 #STR9##                                              ML                                                                                   0 #STR10##                                                                                       1 #STR11##                                             ______________________________________                                    

p speech-in-noise model order

ρ running average update factor for Φ_(v) (ω)

3. For each frame of input data do:

(a) Speech detection (step 110)

The variable Speech is set to true if the VAD output equals st=21 or st=22.

Speech is set to false if st=20. If the VAD output equals st=0 then the algorithm is reinitialized.

(b) Spectral estimation

If Speech estimate Φ_(x) (ω):

i. Estimate the coefficients (the polynomial coefficients {f₁, . . . , f_(p) } and the variance σ.sub.η²) of the all-pole model (23) using the autocorrelation method applied to zero mean adjusted input data {x(k)} (step 120).

ii. Calculate Φ_(x) (ω) according to (25) (step 130). else estimate Φ_(v) (ω) (step 140)

i. Update the background noise spectral model Φ_(v) (ω) using (4), where Φ_(v) (ω) is the Periodogram based on zero mean adjusted and Hanning/Hamming windowed input data x. Since windowed data is used here, while Φ_(x) (ω) is based on unwindowed data, Φ_(v) (ω) has to be properly normalized. A suitable initial value of Φ_(v) (ω) is given by the average (over the frequency bins) of the Periodogram of the first frame scaled by, for example, a factor 0.25, meaning that, initially, a apriori white noise assumption is imposed on the background noise.

(c) Spectral subtraction (step 150)

i. Calculate the frequency weighting function H(ω) according to Table 1.

ii. Possible postfiltering, muting and noise floor adjustment.

iii. Calculate the output using (3) and zero-mean adjusted data {x(k)}. The data {x(k)} may be windowed or not, depending on the actual frame overlap (rectangular window is used for non-overlapping frames, while a Hanning window is used with a 50% overlap).

From the above description it is clear that the present invention results in a significant noise reduction without sacrificing audible quality. This improvement may be explained by the separate power spectrum estimation methods used for speech and non-speech frames. These methods take advantage of the different characters of speech and non-speech (background noise) signals to minimize the variance of the respective power spectrum estimates

For non-speech frames Φ_(v) (ω) is estimated by a non-parametric power spectrum estimation method, for example an FFT based periodogram estimation, which uses all the N samples of each frame. By retaining all the N degrees of freedom of the non-speech frame a larger variety of background noises may be modeled. Since the background noise is assumed to be stationary over several frames, a reduction of the variance of Φ_(v) (ω) may be obtained by averaging the power spectrum estimate over several non-speech frames.

For speech frames Φ_(x) (ω) is estimated by a parametric power spectrum estimation method based on a parametric model of speech. In this case the special character of speech is used to reduce the number of degrees of freedom (to the number of parameters in the parametric model) of the speech frame. A model based on fewer parameters reduces the variance of the power spectrum estimate. This approach is preferred for speech frames, since speech is assumed to be stationary only over a frame.

It will be understood by those skilled in the art that various modifications and changes may be made to the present invention without departure from the spirit and scope thereof, which is defined by the appended claims.

APPENDIX A

ANALYSIS OF H_(MS) (ω)

Paralleling the calculations for H_(MS) (ω) gives ##EQU19## where in the second equality, also the Taylor series expansion √1+x≃1+x/2 is used. From (27) it follows that the expected value of Φ_(s) (ω) is non-zero, given by ##EQU20##

APPENDIX B

ANALYSIS OF H_(WF) (ω)

In this Appendix, the PSD error is derived for speech enhancement based on Wiener filtering, 2!. In this case, H(ω) is given by ##EQU21##

Here, Φ_(s) (ω) is an estimate of Φ_(s) (ω) and the second equality follows from Φ_(s) (ω)=Φ_(x) (ω)-Φ_(v) (ω). Noting that ##EQU22## a straightforward calculation gives ##EQU23##

From (33), it follows that ##EQU24##

APPENDIX C

ANALYSIS OF H_(ML) (ω)

Characterizing the speech by a deterministic wave-form of unknown amplitude and phase, a maximum likelihood (ML) spectral subtraction method is defined by ##EQU25##

Inserting (11) into (36) a straightforward calculation gives ##EQU26## where in the first equality the Taylor series expansion (1+x)⁻¹ ≃1-x and in the second √1+x≃1+x/2 are used. Now, it is straightforward to calculate the PSD error. Inserting (37) into (9)-(10) gives, neglecting higher than first order deviations in the expansion of H_(ML) ² (ω) ##EQU27##

From (38), it follows that ##EQU28## where in the second equality (2) is used. Further, ##EQU29##

APPENDIX D

DERIVATION OF H_(IPS) (ω)

When Φ_(x) (ω) and Φ_(v) (ω) are exactly known, the squared PSD error is minimized by H_(PS) (ω), that is H_(PS) (ω) with Φ_(x) (ω) and Φ_(v) (ω) replaced by Φ_(x) (ω) and Φ_(v) (ω), respectively. This fact follows directly from (9) and (10), viz. Φ_(s) (ω)= H² (ω)Φ_(x) (ω)-Φ_(s) (ω)!² =0, where (2) is used in the last equality. Note that in this case H(ω) is a deterministic quantity, while H(ω) is a stochastic quantity. Taking the uncertainty of the PSD estimates into account, this fact, in general, no longer holds true and in this Section a data-independent weighting function is derived in order to improve the performance of H_(PS) (ω). Towards this end, a variance expression of the form

    Var(Φ.sub.s ((ω)))≃ξγΦ.sub.v.sup.2 ((ω))                                               (41)

is considered (ξ=1 for PS and ξ=(1-√1+SNR)² for MS and γ=γ_(x) +γ_(v)). The variable γ depends only on the PSD estimation method used and cannot be affected by the choice of transfer function H(ω). The first factor ξ, however, depends on the choice of H(ω). In this section, a data independent weighting function G(ω) is sought, such that H(ω)=√G(ω)H_(PS) (ω) minimizes the expectation of the squared PSD error, that is ##EQU30##

In (42), G(ω) is a generic weigthing function. Before we continue, note that if the weighting function G(ω) is allowed to be data dependent a general class of spectral subtraction techniques results, which includes as special cases many of the commonly used methods, for example, Magnitude Subtraction using G(ω)=H_(MS) ² (ω)/H_(PS) ² (ω). This observation is, however, of little interest since the optimization of (42) with a data dependent G(ω) heavily depends on the form of G(ω). Thus the methods which use a data-dependent weighting function should be analyzed one-by-one, since no general results can be derived in such a case.

In order to minimize (42), a straightforward calculation gives ##EQU31##

Taking expectation of the squared PSD error and using (41) gives

    E Φ.sub.s ((ω))!.sup.2 ≃(G((ω))-1).sup.2 Φ.sub.s.sup.2 ((ω))+G.sup.2 ((ω))γΦ.sub.v.sup.2 ((ω))                                               (44)

Equation (44) is quadratic in G(ω) and can be analytically minimized. The result reads, ##EQU32## where in the second equality (2) is used. Not surprisingly, G(ω) depends on the (unknown) PSDs and the variable γ. As noted above, one cannot directly replace the unknown PSDs in (45) with the corresponding estimates and claim that the resulting modified PS method is optimal, that is minimizes (42). However, it can be expected that, taking the uncertainty of Φ_(x) (ω) and Φ_(v) (ω) into account in the design procedure, the modified PS method will perform "better" than standard PS. Due to the above consideration, this modified PS method is denoted by Improved Power Subtraction (IPS). Before the IPS method is analyzed in APPENDIX E.sub.τ the following remarks are in order.

For high instantaneous SNR (for w such that Φ_(s) (ω)/Φ_(v) (ω)>>1) it follows from (45) that G(ω)≃1 and, since the normalized error variance Var(Φ_(s) (ω))/Φ_(s) ² (ω), see (41) is small in this case, it can be concluded that the performance of IPS is (very) close to the performance of the standard PS. On the other hand, for low instantaneous SNR (for w such that γΦ_(v) ² (ω)>>Φ_(s) ² (ω)), G(ω)≈Φ_(s) ² (ω)/(γΦ_(v) ² (ω)), leading to, cf. (43) ##EQU33##

However, in the low SNR it cannot be concluded that (46)-(47) are even approximately valid when G(ω) in (45) is replaced by G(ω), that is replacing Φ_(x) (ω) and Φ_(v) (ω) in (45) with their estimated values Φ_(x) (ω) and Φ_(v) (ω), respectively.

APPENDIX E

ANALYSIS OF H_(IPS) (ω)

In this APPENDIX, the IPS method is analyzed. In view of (45), let G(ω) be defined by (45), with Φ_(v) (ω) and Φ_(x) (ω) there replaced by the corresponding estimated quantities. It may be shown that ##EQU34## which can be compared with (43). Explicitly, ##EQU35##

For high SNR, such that Φ_(s) (ω)/Φ_(v) (ω)>>1, some insight can be gained into (49)-(50). In this case, one can show that ##EQU36##

The neglected terms in (51) and (52) are of order O((Φ_(v) (ω)/Φ_(s) (ω))²). Thus, as already claimed, the performance of IPS is similar to the performance of the PS at high SNR. On the other hand, for low SNR (for w such that Φ_(s) ² (ω)/(γΦ_(v) ² (ω))<<1), G(ω)≃Φ_(s) ² (ω)/(γΦ_(v) ² (ω)), and ##EQU37##

Comparing (53)-(54) with the corresponding PS results (13) and (16), it is seen that for low instantaneous SNR the IPS method significantly decrease the variance of Φ_(s) (ω) compared to the standard PS method by forcing Φ_(s) (ω) in (9) towards zero. Explicitly, the ratio between the IPS and PS variances are of order O(Φ_(s) ⁴ (ω)/Φ_(v) ⁴ (ω)). One may also compare (53)-(54) with the approximative expression (47), noting that the ratio between them equals 9.

APPENDIX F

PS WITH OPTIMAL SUBTRACTION FACTOR δ

An often considered modification of the Power Subtraction method is to consider ##EQU38## where δ(ω) is a possibly frequency dependent function. In particular, with δ(ω)=δ for some constant δ>1, the method is often referred as Power Subtraction with oversubtraction. This modification significantly decreases the noise level and reduces the tonal artifacts. In addition, it significantly distorts the speech, which makes this modification useless for high quality speech enhancement. This fact is easily seen from (55) when δ>>1. Thus, for moderate and low speech to noise ratios (in the w-domain) the expression under the root-sign is very often negative and the rectifying device will therefore set it to zero (half-wave rectification), which implies that only frequency bands where the SNR is high will appear in the output signal s(k) in (3). Due to the non-linear rectifying device the present analysis technique is not directly applicable in this case, and since δ>1 leads to an output with poor audible quality this modification is not further studied.

However, an interesting case is when δ(ω)≦1, which is seen from the following heuristical discussion. As stated previously, when Φ_(x) (ω) and Φ_(v) (ω) are exactly known, (55) with δ(ω)=1 is optimal in the sense of minimizing the squared PSD error. On the other hand, when Φ_(x) (ω) and Φ_(v) (ω) are completely unknown, that is no estimates of them are available, the best one can do is to estimate the speech by the noisy measurement itself, that is s(k)=x(k), corresponding to the use (55) with δ=0. Due the above two extremes, one can expect that when the unknown Φ_(x) (ω) and Φ_(v) (ω) are replaced by, respectively, Φ_(x) (ω) and Φ_(v) (ω), the error E Φ_(s) (ω)!² is minimized for some δ(ω) in the interval 0<δ(ω)<1.

In addition, in an empirical quantity, the averaged spectral distortion improvement, similar to the PSD error was experimentally studied with respect to the subtraction factor for MS. Based on several experiments, it was concluded that the optimal subtraction factor preferably should be in the interval that span from 0.5 to 0.9.

Explicitly, calculating the PSD error in this case gives ##EQU39##

Taking the expectation of the squared PSD error gives

    E Φ.sub.s ((ω))!.sup.2 ≃(1-δ((ω))).sup.2 Φ.sub.v.sup.2 ((ω))+δ.sup.2 γΦ.sub.v.sup.2 ((ω))(57)

where (41) is used. Equation (57) is quadratic in δ(ω) and can be analytically minimized. Denoting the optimal value by δ, the result reads ##EQU40##

Note that since γ in (58) is approximately frequency independent (at least for N>>1) also δ is independent of the frequency. In particular, δ is independent of Φ_(x) (ω) and Φ_(v) (ω), which implies that the variance and the bias of Φ_(s) (ω) directly follows from (57).

The value of δ may be considerably smaller than one in some (realistic) cases. For example, once again considering γ_(v) =1/τ and γ_(x) =1. Then δ is given by ##EQU41## which, clearly, for all τ is smaller than 0.5. In this case, the fact that δ<<1 indicates that the uncertainty in the PSD estimators (and, in particular, the uncertainty in Φ_(x) (ω)) have a large impact on the quality (in terms of PSD error) of the output. Especially, the use of δ<<1 implies that the speech to noise ratio improvement, from input to output signals is small.

An arising question is that if there, similarly to the weighting function for the IPS method in APPENDIX D, exists a data independent weighting function G(ω). In APPENDIX G, such a method is derived (and denoted δIPS).

APPENDIX G

DERIVATION OF H.sub.δIPS (ω)

In this appendix, we seek a data independent weighting factor G(ω) such that H(ω)=√G(ω)H.sub.δPS (ω) for some constant δ(0≦δ≦1) minimizes the expectation of the squared PSD error, cf (42). A straightforward calculation gives ##EQU42##

The expectation of the squared PSD error is given by

    E Φ.sub.s ((ω))!.sup.2 =(G((ω))-1).sup.2 Φ.sub.s.sup.2 ((ω))+G.sup.2 ((ω))(1-δ).sup.2 Φ.sub.v.sup.2 ((ω))

    2(G((ω))-1)Φ.sub.s ((ω))G((ω))(1-δ)Φ.sub.v ((ω))+G.sup.2 (w)δ.sup.2 γΦ.sub.v.sup.2 ((ω))(60)

The right hand side of (60) is quadratic in G(ω) and can be analytically minimized. The result G(ω) is given by ##EQU43## where β in the second equality is given by ##EQU44##

For δ=1, (61)-(62) above reduce to the IPS method, (45), and for δ=0 we end up with the standard PS. Replacing Φ_(s) (ω) and Φ_(v) (ω) in (61)-(62) with their corresponding estimated quantities Φ_(x) (ω)-Φ_(v) (ω) and Φ_(v) (ω), respectively, give rise to a method, which in view of the IPS method, is denoted δIPS. The analysis of the δIPS method is similar to the analysis of the IPS method, but requires a lot of efforts and tedious straightforward calculations, and is therefore omitted.

CITATIONS

1! S. F. Boll, "Suppression of Acoustic Noise in Speech Using Spectral Subtraction", IEEE Transactions on Acoustics, Speech, and Signal Processing, Vol. ASSP-27, April 1979, pp. 113-120.

2! J. S. Lim and A. V. Oppenheim, "Enhancement and Bandwidth Compression of Noisy Speech". Proceedings of the IEEE, Vol. 67, No. 12, December 1979, pp. 1586-1604.

3! J. D. Gibson, B. Koo and S. D. Gray, "Filtering of Colored Noise for Speech Enhancement and Coding", IEEE Transactions on Acoustics, Speech, and Signal Processing, Vol. ASSP-39, No. 8, August 1991, pp. 1732-1742.

4! J. H. L Hansen and M. A. Clements, "Constrained Iterative Speech Enhancement with Application to Speech Recognition", IEEE Transactions on Signal Processing, Vol. 39, No. 4, April 1991, pp. 795-805.

5! D. K. Freeman, G. Cosier, C. B. Southcott and I. Boid, "The Voice Activity Detector for the Pan-European Digital Cellular Mobile Telephone Service", 1989 IEEE International Conference Acoustics, Speech and Signal Processing, Glasgow, Scotland, Mar. 23-26 1989, pp. 369-372.

6! PCT application WO 89/08910, British Telecommunications PLC. 

What is claimed is:
 1. A spectral subtraction noise suppression method in a frame based digital communication system, each frame including a predetermined number N of audio samples, thereby giving each frame N degrees of freedom, wherein a spectral subtraction function H(ω) is based on an estimate Φ_(v) (ω) of a power spectral density of background noise of non-speech frames and an estimate Φ_(x) (ω) of a power spectral density of speech frames comprising the steps of:approximating each speech frame by a parametric model that reduces the number of degrees of freedom to less than N; estimating said estimate Φ_(x) (ω) of the power spectral density of each speech frame by a parametric power spectrum estimation method based on the approximative parametric model; and estimating said estimate Φ_(v) (ω) of the power spectral density of each non-speech frame by a non-parametric power spectrum estimation method.
 2. The method of claim 1, wherein the approximative parametric model is an autoregressive (AR) model.
 3. The method of claim 2, wherein the autoregressive (AR) model is approximately of order √N.
 4. The method of claim 3, wherein the autoregressive (AR) model is approximately of order
 10. 5. The method of claim 3, wherein the a spectral subtraction function H(ω) is in accordance with the formula: ##EQU45## where G(ω) is a weighting function and δ(ω) is a subtraction factor.
 6. The method of claim 5, wherein G(ω)=1.
 7. The method of claim 5, wherein δ(ω) is a constant ≦1.
 8. The method of claim 3, wherein the a spectral subtraction function H(ω) is in accordance with the formula: ##EQU46##
 9. The method of claim 3, wherein the a spectral subtraction function H(ω) is in accordance with the formula:
 10. The method of claim 3, wherein the spectral subtraction function H(ω) is in accordance with the formula: 